1. Field of the Invention
The present invention relates to receivers for use in a mobile communications system and, more specifically, to a diversity receiver for reducing transmission errors by selecting one of a plurality of branches.
2. Description of the Background Art
In diversity reception, generally known is a scheme of selecting a branch that is the highest in received power from a plurality of branches. In mobile communications, however, an error may occur even on a signal outputted by the branch that is high in received power, due to radio interferences, multipath, or other factors. Therefore, it is impossible to correctly select a high-quality branch only based on the received power. An example scheme for solving this problem is disclosed in Japanese Patent Laid-Open Publication No. 2000-4192, which corresponds to U.S. Pat. No. 6,181,749, describing a diversity receiver for selecting a high-quality branch with high accuracy even with less-redundant error correcting/detecting code having a short length.
FIG. 11 is a block diagram showing the construction of a conventional diversity receiver disclosed in the above gazette. This diversity receiver includes antennas 10a to 10z, detectors 11a to 11z, error detectors/correctors 51a to 51z, a data detector 15, a data comparator 52, and a data selector 53. The antennas 10a to 10z receive, independently for each other, radio waves emitted from a transmitter, and output modulated signals 20a to 20z, respectively.
The signal 20 is modulated with data illustrated in FIG. 2. The data is composed of a unique word (UW) 71 and j blocks 72a to 72j. The unique word 71 is provided at the head of a string of data for enabling detection of the head of the following valid data. Each of the blocks 72a to 72j is data of n bits coded with error correcting code. The error correcting code used for coding the block 72 is binary BCH (Bose-Chaudhuri-Hocquenghem) code. The BCH code has codewords composed of information data of k bits and check bits of 2 m bits and is capable of 2-bit error correction.
The detectors 11a to 11z and the error detectors/correctors 51a to 51z are provided correspondingly to the antennas 10a to 10z. The antennas 10a to 10z, the detectors 11a to 11z, and the error detectors/correctors 51a to 51z construct branches for processing the modulated signals 20a to 20z, respectively.
The modulated signals 20a to 20z are subjected to the same processing on the respective branches. The detectors 11a to 11z detect the modulated signals 20a to 20z, and output detected data strings 21a to 21z, respectively. The error detectors/correctors 51a to 51z carry out error detection and error correction on the detected data strings 21a to 21z, respectively. As stated above, the detected data strings 21a to 21z has been coded with BCH code capable of 2-bit error correction. Therefore, the error detectors/correctors 51a to 51z output any one of no error, one-bit error, two-bit error, or three-bit or more error, respectively, as the numbers of error symbols 22a to 22z included in the detected data strings 21a to 21z. Also, the error detectors/correctors 51a to 51z detect error locations 23a to 23z indicating locations of the error bits in the detected data strings 21a to 21z, and output decoded data strings 24a to 24z after correction, respectively.
When two-bit or less error occurs in the detected data string 21, the error detector/corrector 51 outputs the decoded data string 24 with its error properly corrected. In some cases, however, three-bit or more error and two-bit or less error are not distinguishable by using 2-bit error correcting BCH code. As a result, when three-bit or more error occurs in the detected data string 21, the error detector/corrector 51 may output the decoded data string 24 with its errors improperly corrected. Such improper data correction is hereinafter referred to as miscorrection.
The data detector 15 checks whether the detected data strings 21a to 21z include the unique word 71, and outputs detection signals 25a to 25z respectively indicating the check results. The data comparator 52 compares the decoded data strings 24a to 24z with each other, and outputs decision signals 62a to 62z respectively indicating whether the error locations 23a to 23z are correct. For example, the data comparator 52 compares data located at the error location 23a in the decoded data string 24a with data located at the same location in another decoded data string and, based on the comparison result, outputs the decision signal 62a. The data selector 53 selects one of the decoded data strings 24a to 24z for each block 72. This selection is based on the detection signals 25a to 25z outputted from the data detector 15, the numbers of error symbols 22a to 22z detected in the error detectors/correctors 51a to 51z, and the decision signals 62a to 62z outputted from the data comparator 52. The data selector 53 then outputs the selected decoded data string as an output data string 63.
As such, the conventional diversity receiver compares the decoded data strings 24a to 24z with each other, and based on the comparison results, selects one of these decoded data strings 24a to 24z for output. Therefore, if each branches are similar in quality and miscorrection is caused by relatively less bit error, misselection of a branch low in quality can be prevented. Therefore, according to the conventional diversity receiver, error detection can be accurately carried out even with less-redundant code having a short length, thereby enabling a high-quality branch to be selected.
However, the above conventional diversity receiver has the following drawbacks. For example, consider a case where the branches greatly differ in quality from each other: some are of good quality and some are of extremely poor quality. In this case, even though a poor-quality branch has numerous error bits, the branch may be determined as having less error bits due to miscorrection. Consequently, the data comparator has to compare a decoded data string properly corrected in a good-quality branch with a decoded data string improperly corrected in a poor-quality branch, thereby making the decision signal less reliable. Moreover, the data selector selects a branch based on such a less-reliable decision signal, and therefore the selected branch may be of extremely poor quality. Such improper branch selection is hereinafter referred to as misselection.
In the conventional diversity receiver, if the number of error symbols in a modulated signal is within a range that can be corrected with error correcting code, a decoded data string is ensured of being correct, and therefore misselection does not occur. In contrast, if the number of error symbols exceeds the range, error correction may cause miscorrection and, consequently, may also cause misselection, thereby greatly degrading the reception characteristic of the diversity receiver.
In the conventional diversity receiver, the probability that misselection can occur is calculated as follows. Misselection can occur when the number of error symbols calculated for a poor-quality branch is equal to or smaller than that calculated for a good-quality branch. Hereinafter, assume that there are two branches, the branch A of good quality and the branch B of poor quality; and a bit error rate (BER) of the branch A is Pe (Pe<<1) and a BER of the branch B is 0.5. That is, the BER of the branch A is sufficiently smaller than 1, and the decoded data string outputted from the branch B has Os and is appearing at random. Also assume that (63, 51) BCH code capable of 2-bit error correction is used as error correcting code.
In the branch A, a probability Pa(k) of occurrence of k-bit error in one block is given by the following equation.Pa(k)=63Ck×Pek×(1−Pe)63−k(k=0, 1, . . . , 63)
Next, in the branch B, a probability Pb(k) of occurrence of k-bit error in one block is given as follows. Here, the number of possible bit strings of 63 bits is 263. Of these bit strings, the number of possible bit strings determined as having no error is 251, the number of possible bit strings determined as having one-bit error is 63C1×251, and the number of possible bit strings determined as having two-bit error is 63C2×251. Therefore, the probability Pb(k) is given by the following equation.Pb(k)=63Ck×251/263=63Ck/212(k=0, 1, 2)
Assuming that the probability of occurrence of two or more bit error in the branch A is sufficiently low and negligible, misselection may occur in the following three cases: 1) both of the branch A and the branch B are determined as no error; 2) both of the branch A and the branch B are determined as one error bit; and 3) the branch A is determined as one-bit error, and the branch B is determined as no error. In these three cases, the probabilities of occurrence of misselection are hereinafter denoted as P00, P11, and P10, respectively. Since 63Pe<<1 holds, the probabilities P00, P11, and P10 are given by the following equations.P00=Pa(0)×Pb(0)≈2.4×10−4P11=Pa(1)×Pb(1)≈0.97×PeP10=Pa(1)×Pb(0)≈0.015×Pe
Therefore, if Pe=10−8, for example, a probability Q that misselection can occur is given by the following equation.                               Q          =                    ⁢                                    P              00                        +                          P              11                        +                          P              10                                                                    =                    ⁢                                    2.4              ×                              10                                  -                  4                                                      +                          9.7              ×                              10                                  -                  9                                                      +                          1.5              ×                              10                                  -                  10                                                                                                  ≈                    ⁢                      2.4            ×                          10                              -                4                                                           
As can be seen from the above, the probability Q mainly depends on the probability P00 that both of the branches A and B are determined no error. Here, assume that a probability of actual occurrence of misselection is ½, and a bit error rate when misselection occurs is 0.5. Therefore, an average bit error rate R is given as the following equation.R=2.4×10−4×0.5×0.5=6×10−5
On the other hand, a bit error rate when misselection does not occur is 10−8. Therefore, the average bit error rate becomes greatly degraded due to misselection.
One scheme for suppressing the occurrence of misselection is suppressing the occurrence of miscorrection by increasing redundancy in or a code length of error correcting code. However, increasing redundancy in error correcting code reduces transmission efficiency. Also, increasing the code length of the error correcting code increases delay time in processing. Therefore, the processing cannot follow temporal changes in a propagation channel due to fading.